﻿<?xml version="1.0" encoding="utf-8"?>
<Mapping xmlns:cs="urn:schemas-microsoft-com:windows:storage:mapping:CS"
         Space="C-S"
         xmlns="urn:schemas-microsoft-com:windows:storage:mapping:CS">
  <cs:EntityContainerMapping StorageEntityContainer="Schema"
                             CdmEntityContainer="SchemaInformation">

    <cs:EntitySetMapping Name="Tables"
                         StoreEntitySet="STables"
                         TypeName="Store.Table">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName"
                         ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName"
                         ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="TableColumns"
                         StoreEntitySet="STableColumns"
                         TypeName="Store.Column">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
      <cs:ScalarProperty Name="IsNullable"
                         ColumnName="IsNullable" />
      <cs:ComplexProperty Name="ColumnType">
        <cs:ScalarProperty Name="TypeName"
                           ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength"
                           ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision"
                           ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision"
                           ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale"
                           ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet"
                           ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsIdentity"
                         ColumnName="IsIdentity" />
      <cs:ScalarProperty Name="IsStoreGenerated"
                         ColumnName="IsStoreGenerated" />
      <cs:ScalarProperty Name="Default"
                         ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Views"
                         StoreEntitySet="SViews"
                         TypeName="Store.View">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName"
                         ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName"
                         ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ScalarProperty Name="ViewDefinition"
                         ColumnName="ViewDefinition" />
      <cs:ScalarProperty Name="IsUpdatable"
                         ColumnName="IsUpdatable" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewColumns"
                         StoreEntitySet="SViewColumns"
                         TypeName="Store.Column">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
      <cs:ScalarProperty Name="IsNullable"
                         ColumnName="IsNullable" />
      <cs:ComplexProperty Name="ColumnType">
        <cs:ScalarProperty Name="TypeName"
                           ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength"
                           ColumnName="MaxLength" />
        <cs:ScalarProperty Name="Precision"
                           ColumnName="Precision" />
        <cs:ScalarProperty Name="DateTimePrecision"
                           ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Scale"
                           ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet"
                           ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsIdentity"
                         ColumnName="IsIdentity" />
      <cs:ScalarProperty Name="IsStoreGenerated"
                         ColumnName="IsStoreGenerated" />
      <cs:ScalarProperty Name="Default"
                         ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Functions"
                         TypeName="Store.ScalarFunction"
                         StoreEntitySet="SFunctions">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName"
                         ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName"
                         ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ComplexProperty Name="ReturnType">
        <cs:ScalarProperty Name="TypeName"
                           ColumnName="ReturnTypeName" />
        <cs:ScalarProperty Name="MaxLength"
                           ColumnName="ReturnMaxLength" />
        <cs:ScalarProperty Name="Precision"
                           ColumnName="ReturnPrecision" />
        <cs:ScalarProperty Name="DateTimePrecision"
                           ColumnName="ReturnDateTimePrecision" />
        <cs:ScalarProperty Name="Scale"
                           ColumnName="ReturnScale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="ReturnCollationCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="ReturnCollationSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="ReturnCollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="ReturnCharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="ReturnCharacterSetSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="ReturnCharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet"
                           ColumnName="ReturnIsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsAggregate"
                         ColumnName="IsAggregate" />
      <cs:ScalarProperty Name="IsBuiltIn"
                         ColumnName="IsBuiltIn" />
      <cs:ScalarProperty Name="IsNiladic"
                         ColumnName="IsNiladic" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="FunctionParameters"
                         TypeName="Store.Parameter"
                         StoreEntitySet="SFunctionParameters">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
      <cs:ComplexProperty Name="ParameterType">
        <cs:ScalarProperty Name="TypeName"
                           ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength"
                           ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision"
                           ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision"
                           ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale"
                           ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet"
                           ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="Mode"
                         ColumnName="Mode" />
      <cs:ScalarProperty Name="Default"
                         ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Procedures"
                         TypeName="Store.Procedure"
                         StoreEntitySet="SProcedures">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName"
                         ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName"
                         ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ProcedureParameters"
                         TypeName="Store.Parameter"
                         StoreEntitySet="SProcedureParameters">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Name"
                         ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
      <cs:ComplexProperty Name="ParameterType">
        <cs:ScalarProperty Name="TypeName"
                           ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength"
                           ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision"
                           ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision"
                           ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale"
                           ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName"
                             ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName"
                             ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet"
                           ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="Mode"
                         ColumnName="Mode" />
      <cs:ScalarProperty Name="Default"
                         ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="TableConstraints" >
      <cs:EntityTypeMapping TypeName="IsTypeOf(Store.Constraint)">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable"
                             ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred"
                             ColumnName="IsInitiallyDeferred" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.UniqueConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="UNIQUE"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.CheckConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="CHECK"/>
        </cs:MappingFragment>
        <cs:MappingFragment StoreEntitySet="SCheckConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Expression"
                             ColumnName="Expression" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.PrimaryKeyConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="PRIMARY KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.ForeignKeyConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="FOREIGN KEY"/>
        </cs:MappingFragment>
        <cs:MappingFragment StoreEntitySet="SForeignKeyConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="UpdateRule"
                             ColumnName="UpdateRule" />
          <cs:ScalarProperty Name="DeleteRule"
                             ColumnName="DeleteRule" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewConstraints" >
      <cs:EntityTypeMapping TypeName="Store.UniqueConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable"
                             ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred"
                             ColumnName="IsInitiallyDeferred" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="UNIQUE"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.CheckConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable"
                             ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred"
                             ColumnName="IsInitiallyDeferred" />
          <cs:ScalarProperty Name="Expression"
                             ColumnName="Expression" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="CHECK"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.PrimaryKeyConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable"
                             ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred"
                             ColumnName="IsInitiallyDeferred" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="PRIMARY KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.ForeignKeyConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id"
                             ColumnName="Id" />
          <cs:ScalarProperty Name="Name"
                             ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable"
                             ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred"
                             ColumnName="IsInitiallyDeferred" />
          <cs:ScalarProperty Name="UpdateRule"
                             ColumnName="UpdateRule" />
          <cs:ScalarProperty Name="DeleteRule"
                             ColumnName="DeleteRule" />
          <cs:Condition ColumnName="ConstraintType"
                        Value="FOREIGN KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="TableForeignKeys"
                         StoreEntitySet="SForeignKeys"
                         TypeName="Store.ForeignKey">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewForeignKeys"
                         StoreEntitySet="SViewForeignKeys"
                         TypeName="Store.ForeignKey">
      <cs:ScalarProperty Name="Id"
                         ColumnName="Id" />
      <cs:ScalarProperty Name="Ordinal"
                         ColumnName="Ordinal" />
    </cs:EntitySetMapping>

    <cs:AssociationSetMapping Name="TableTableColumns"
                              StoreEntitySet="STableColumns"
                              TypeName="Store.TableOrViewColumn">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewViewColumns"
                              StoreEntitySet="SViewColumns"
                              TypeName="Store.TableOrViewColumn">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableTableConstraints"
                              StoreEntitySet="SConstraints"
                              TypeName="Store.TableOrViewConstraint">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableConstraintColumns"
                              StoreEntitySet="SConstraintColumns"
                              TypeName="Store.TableOrViewConstraintColumn">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableConstraintForeignKeys"
                              StoreEntitySet="SForeignKeys"
                              TypeName="Store.ConstraintForeignKey">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ToTableForeignKeyColumns"
                              StoreEntitySet="SForeignKeys"
                              TypeName="Store.ToForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ToColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FromTableForeignKeyColumns"
                              StoreEntitySet="SForeignKeys"
                              TypeName="Store.FromForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="FromColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewViewConstraints"
                              StoreEntitySet="SViewConstraints"
                              TypeName="Store.TableOrViewConstraint">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewConstraintColumns"
                              StoreEntitySet="SViewConstraintColumns"
                              TypeName="Store.TableOrViewConstraintColumn">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewConstraintForeignKeys"
                              StoreEntitySet="SViewForeignKeys"
                              TypeName="Store.ConstraintForeignKey">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ToViewForeignKeyColumns"
                              StoreEntitySet="SViewForeignKeys"
                              TypeName="Store.ToForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ToColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FromViewForeignKeyColumns"
                              StoreEntitySet="SViewForeignKeys"
                              TypeName="Store.FromForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id"
                           ColumnName="FromColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FunctionFunctionParameters"
                              StoreEntitySet="SFunctionParameters"
                              TypeName="Store.RoutineParameter">
      <cs:EndProperty Name="Routine">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Parameter">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ProcedureProcedureParameters"
                              StoreEntitySet="SProcedureParameters"
                              TypeName="Store.RoutineParameter">
      <cs:EndProperty Name="Routine">
        <cs:ScalarProperty Name="Id"
                           ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Parameter">
        <cs:ScalarProperty Name="Id"
                           ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

  </cs:EntityContainerMapping>

</Mapping>